package io.finer.erp.jeecg.purchase.vo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;

@Data
@ApiModel(value="PurchaseRequestLinePage对象", description="采购申请行-用于展示示")
public class PurchaseRequestLinePage {

    @ApiModelProperty(value = "ID")
    private String id;

    @ApiModelProperty(value = "主表")
    private String mid;

    @ApiModelProperty(value = "物料")
    private String materialId;

    @ApiModelProperty(value = "物料编码")
    private String materialCode;

    @ApiModelProperty(value = "物料名称")
    private String materialName;

    @ApiModelProperty(value = "规格型号")
    private String model;

    @ApiModelProperty(value = "申请数量")
    private Integer requestNum;

    @ApiModelProperty(value = "已采购数量")
    private Integer purchasedNum;

    @ApiModelProperty(value = "待处理数量")
    private Integer processNum;

    @ApiModelProperty(value = "单位")
    private String unitId;

    @ApiModelProperty(value = "单位编码")
    private String unitSymbol;

    @ApiModelProperty(value = "单位名称")
    private String unitName;

    @ApiModelProperty(value = "参考单价")
    private BigDecimal referencePrice;

    @ApiModelProperty(value = "单价")
    private BigDecimal price;

    @ApiModelProperty(value = "供应商")
    private String supplierId;

    @ApiModelProperty(value = "供应商编码")
    private String supplierCode;

    @ApiModelProperty(value = "供应商名称")
    private String supplierName;

    @ApiModelProperty(value = "币种")
    private String currencyId;

    @ApiModelProperty(value = "币种编码")
    private String currencyCode;

    @ApiModelProperty(value = "币种名称")
    private String currencyName;

    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "计划使用日期")
    private Date planUseDate;

    @ApiModelProperty(value = "收货库位")
    private String destWarehouseId;

    @ApiModelProperty(value = "收货库位编码")
    private String destWarehouseCode;

    @ApiModelProperty(value = "收货库位名称")
    private String destWarehouseName;


    @ApiModelProperty(value = "采购员")
    private String buyer;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "版本")
    private Integer version;

}
